package bloxorz;

import java.awt.Color;
import java.awt.Font;
import java.awt.Insets;

import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.border.Border;

import model.Casa;

public class BotaoCasa extends JButton {

	private static final long serialVersionUID = 1L;
	
	public static Border REBORDO_TERRA;
	public static Color COR_TERRA = Color.decode("#534B4F"); //Cizento-Figado, ahah
	public static Color COR_BURACO = Color.decode("#321414"); //Castanho-Foca, ahah
	public static Color COR_PARTIDA = Color.decode("#800000"); //Castanho-Marrao
	public static Border REBORDO_GOLO = BorderFactory.createLineBorder(Color.RED);
	public static Color COR_FRACA = Color.decode("#7B3F00"); //Chocolate, nham
	
	private Casa casa;
	
	public BotaoCasa(Casa casa) {
		//super(casa.getId() + "");
		//super("(" + casa.getX() + "," + casa.getY() + ")");
		this.casa = casa;
		REBORDO_TERRA = this.getBorder();
		this.setTipo(casa.getTipo());
		
		Font f = this.getFont();
		this.setFont(new Font(f.getName(), Font.PLAIN, f.getSize()-2));
		this.setForeground(Color.WHITE);
		this.setMargin(new Insets(1,1,1,1));
	}

	public Casa getCasa() {
		return casa;
	}

	public void setCasa(Casa casa) {
		this.casa = casa;
	}
	
	public void setTipo(int tipoCasa) {
		
		this.getCasa().setTipo(tipoCasa);
		
		if (tipoCasa == Casa.TERRA) {
			this.setBorder(REBORDO_TERRA);
			this.setBackground(COR_TERRA);
		}
		else if (tipoCasa == Casa.BURACO) { 
			this.setBorder(null);
			this.setBackground(COR_BURACO);
		}
		else if (tipoCasa == Casa.BLOCO) {
			this.setBorder(REBORDO_TERRA);
			this.setBackground(COR_PARTIDA);
		}
		else if (tipoCasa == Casa.GOLO) {
			this.setBorder(REBORDO_GOLO);
			this.setBackground(COR_BURACO);
		}
		else if (tipoCasa == Casa.FRACA) {
			this.setBorder(REBORDO_TERRA);
			this.setBackground(COR_FRACA);
		}
	}
	
}
